package com.hn658.base.message.account.dao.redis;


import com.hn658.base.message.account.entity.AccountUserInfoEO;

public interface IAccountManagerRedisDAO {
	/**
	 * 保存用户信息
	 * @param userInfoEO
	 */
	public void save(AccountUserInfoEO userInfoEO);
	
	/**
	 * 删除用户信息
	 */
	public void delete(String appKey, String userId);
	
	/**
	 * 根据操作口令获取用户信息
	 */
	public AccountUserInfoEO getAccountByAccessToken(String accessToken);
	
	/**
	 * 
	 * <p>设置用户登录验证码</p> 
	 */
	public void setAccessToken(String appKey, String userId, String accessToken);
	
	/**
	 * 通过appUid获取redis中的token
	 * @param appUid
	 * @return
	 */
	public String getAccessToken(String appKey, String userId);
	
	/**
	 * 设置用户当前在线状态
	 * @param appUid
	 * @param isOnline
	 */
	public void setUserOnlineStatus(String appKey, String userId, boolean isOnline);
	
	/**
	 * 根据appid和uid得到用户信息
	 * @param appUid
	 * @return
	 */
	public AccountUserInfoEO getAccount(String appKey, String userId);

}
